Typically, in energy stations and in any system in which a plurality of electronic devices wired on a shared communication line (e.g., RS485) is present, there is the need to provide each device with an address, in order to communicate with the devices, selectively addressing messages to the various devices, and to recognize from which device a message was generated on the communication line.
Within the present description and the appended claims, though in some cases reference is made to a wired communication channel, it must be understood that the term “communication channel” can mean any type of channel able to allow the transmission of information from and to said devices. In some cases, an operator will use this address to interrogate and identify each individual device.
It is obvious that in the same network there cannot be two or more devices with the same address, because this conflict would prevent a controller from correctly managing the entire set and, moreover, communication could be compromised (to a single request, multiple devices with the same address would respond simultaneously).
Generally, the set of devices is mounted in a rack. Each compartment of the rack, among other things, presents a hardware interface (dip-switch, analogue line or another one) from which the device retrieves the address in static manner. In this way, the address also identifies the position in the rack. The device recognizes its own address and acquires it when, after being inserted in the rack, it is turned on and it reads the information provided by the hardware interface.
FIG. 1 shows a grid of rows and columns, each numbered with a two-digit numeric code in the binary system. Said grid can represent the set of the housings of a rack. Thus, each housing is identified by four digits: the two digits that indicate the row and the digits that indicate the column, whose intersection defines the individual housing of the rack. Each device or unit then assumes the generic address ABab, where AB are the digits that indicate the row and ab are the digits that indicate the column of the housing in which the device is inserted.
This solution presents the following advantages:                1. a device is immediately identifiable from the address because it exactly represents the position in the rack. In case of malfunction, a specialist can immediately remove the device and replace it, because its physical position is immediately identifiable, as it coincides with its address;        2. the management is easily understandable by everyone.However, this solution also presents numerous disadvantages:        1. if the address is generated by an analogue line                    a. each device has to reserve an analogue channel (which is very value, since typically there are not many of them in a micro-controller) to read the address,            b. the more addresses are generated by the same line, the more precise the reading must be: if the line is used for 8 devices, the analogue range has to be divided by 8 and each section has to have safety ranges to avoid overlaps,            c. the length of the wiring affects the impedance of the line and can change the level of the analogue signal read and hence the address,            d. noise on the line and signal partitioning tolerances are not always negligible;                        2. if the address is generated by a digital line and configured by means of dip-switches                    a. a considerable number of digital inputs must be used (log2(max_addresses)+1)            b. an operator could make mistakes in configuring the rack, creating duplicated addresses;                        3. both on the rack and on each unit, a signal bus has to be created for the sole purpose of providing a static address which, ideally, is read only once when the unit is turned on        4. both on the rack and on each unit, (costly) connectors have to be mounted for the sole purpose of transferring the static cell address to the device        5. if a device is removed and then quickly reinserted in another housing, if it did not turn off because of energy maintenance systems (bulk capacitors), it would maintain the address related to the previous housing, creating, even if only temporarily:                    a. a possible duplicated address (if for example a new device is inserted in the housing where the old one has just been removed),            b. a mismatch between address and position.                        